/** ## useState  回调函数的参数
 * 
 *  ### 使用场景：
 *          参数只会在组件的初始渲染中起作用，后续渲染时会被忽略。
 *          如果初始state需要通过计算才能获得，则可以传入一个函数，在函数中计算并返回初始的state，此函数只在初始渲染时被调用。
 * ### 语法：const [name,setName] = useState(()=>{  // 编写计算逻辑  return '计算之后的初始值' })
 * ### 语法规则： 
 *              1.回调函数return 出去的值将作为name的初始值
 *              2.回调函数中的逻辑只会在组件初始化的时候执行一次
 * ### 语法选择:
 *              1.如果就是初始化一个普通数据，直接使用useState（普通数据）即可。
 *              2.如果要初始化的数据无法直接得到需要通过计算才能获得，使用useState(()=>{})
 */


// 需求：实现一个自增按钮，可以由使用的时候以传参的方式决定递增的初始值

import {useState} from 'react'
function Counter(props){
    // 回调函数中的逻辑只会在组件初始化的时候执行一次
    const [count,setCount] = useState(()=>{
        // 编写计算逻辑

        // 计算之后的初始值
        return props.count
    })
    return (
        <div>
            <button onClick={()=>{setCount(count + 1)}}>{count}</button>
        </div>
    )
}
export default Counter
